<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // Set ES6新增数据结构  （类似于数组有序的），成员值是唯一的
        // 基本语法：new Set(arr/likeArr);

        let set1 = new Set();
        console.log(set1);  //Set(0) {size: 0}

        let arr1 = [1,2,3,4,1,2,3,4];
        let set2 = new Set(arr1);
        console.log(set2);

        // 数组去重
        let testArr = [10,20,10,20,10,20];

        // Array.from(likeArr); 将类数组转为数组
        let resArr = Array.from(new Set(testArr));
        console.log(resArr);



        /*
            - size   获取set集合的长度
            - add(值) 给集合添加值，返回新set,修改了原来的数据结构
            - delete(值)  删除某个值，返回布尔值，表示是否删除成功
            - has(值)  查询这个值是否是集合的成员，返回布尔值
            - clear()  清空集合,没有返回值
        */


       console.log(set2.size); //4
       console.log(set2.add(66)); //Set(5) {1, 2, 3, 4, 66}
       console.log(set2); //Set(5) {1, 2, 3, 4, 66}

       console.log(set2.delete(2)); //true
       console.log(set2.delete(99)); //false
       console.log(set2);//Set(4) {1, 3, 4, 66}


       console.log(set2.has(66));//true

       set2.clear()
       console.log(set2);



    </script>
</body>
</html>